#ifndef MESH_H
#define MESH_H

#include "edge.h"
#include "edgepair.h"
#include "face.h"
#include "facepair.h"
#include "point.h"
#include "pointhood.h"
#include <string>

class mesh
{
//public:
//    // constructor
//    mesh(string);

//    // get
//    point* getPoints();
//    edge* getEdges();
//    face* getFaces();
//    pointHood* getPointHoods();
//    facePair* getFacePairs();
//    int* getConstraintMatrix();
//    int* getObjectiveMatrix();

//    // other
//    void print();

//private:
//    std::string dataFile;

//    //-----------------------------
//    //----------- local variables--
//    //-----------------------------

//    // atomic
//    int pointCount;
//    point points[];
//    int edgeCount;
//    edge edges[];
//    int faceCount;
//    face faces[];

//    // groups
//    int pointHoodCount;
//    pointHood pointHoods[];
//    int facePairCount;
//    facePair facePairs[];

//    // for solving
//    int* constraintMatrix;
//    int* objectiveMatrix;

//    //-----------------------------
//    //----------- member functions-
//    //-----------------------------

//    // set (only called by setup)
//    void setPoints(point[], int);
//    void setEdges(edge[], int);
//    void setFaces(face[], int);
//    void setPointHoods(pointHood[], int);
//    void setFacePairs(facePair[], int);
//    void setConstraintMatrix(int*);
//    void setObjectiveMatrix(int*);
};

#endif // MESH_H
